package nowcoder.eor;

/**
 * 使用异或运算交换两个数
 * 异或运算的性质：
 *  1.相当于不进位加法
 *  2.满足交换律、结合律
 *  3.整体的异或值为x,部分异或值为y,则部分值为x^y
 *  4.0^n = n , n^n = 0
 */

public class SwapNumber {
    public void swap(int a, int b) {
        a = a ^ b;
        b = a ^ b;
        a = a ^ b;
        
        System.out.println("a: " + a);
        System.out.println("b: " + b);
    }
    
    public static void main(String[] args){
      new SwapNumber().swap(1, 2);
    }
}